Recently, communication systems have been developed that enable users of mobile telephones to have limited access to various applications via the Internet. However, in order for a user to access the applications via his or her mobile telephone, the application must be designed in accordance with complex telephone communication protocols, such as a Short Message Service (“SMS”) protocol or an Unstructured Supplementary Service Data (“USSD”) protocol.
The SMS protocol allows a user to send and receive short alphanumeric messages (typically up to 160 characters) via his or her mobile telephone. Such a protocol was initially developed to be used in a Global System for Mobile communications (“GSM”) systems, but is now also utilized in Time Division Multiple Access (“TDMA”) and Code Division Multiple Access (“CDMA”) communication systems. The SMS protocol allows a user to connect to a communication network on a “message-by-message” basis. For example, if a user wishes to send an SMS message to the network, a connection between the user's mobile telephone and the network is established, the SMS message is sent to the network, and the connection is terminated. Afterwards, if a reply needs to be sent from the network to the user, a connection between the user's mobile telephone and the network is established, the SMS message is sent to the telephone, and the connection is terminated.
The USSD protocol is similar to the SMS protocol, except that the USSD protocol allows a user to establish a connection to a network on a “session” basis instead of on a “message-by-message” basis. In particular, the USSD protocol creates a continuing connection between the mobile telephone and the network while multiple messages are exchanged between the telephone and the network, and the connection is terminated when the session of exchanging such messages is completed.
Various communications companies utilize the SMS and USSD protocols in their communication products. Examples of the SMS and USSD protocols are the Short Message Peer-to-Peer (“SMPP”) protocol developed by Logical Aldiscon, the UCP protocol developed by CMG, the CIMD protocol developed by Nokia, and the NIP protocol developed by Comverse. The SMPP, UCP, CIMD, and NIP protocols are proprietary protocols of the respective companies identified above.
Currently, developing Internet applications that can communicate with mobile telephones is complex and time consuming. In order to better explain such complexity, an example of a typical communication system that enables a mobile telephone to communicate with one or more applications will be described conjunction with FIG. 1. As shown in the figure, the system contains a mobile terminal 10, a cellular controller 30, and a plurality of application servers 40 and 50.
The cellular controller 30 is typically an SMS Center (i.e. a controller that utilizes an SMS protocol) or a USSD Center (i.e. a controller that utilizes a USSD protocol) and communicates with the mobile terminal 10 by exchanging SMS or USSD messages with the terminal 10. (SMS or USSD messages are messages that comply with the SMS or USSD protocol). For instance, the mobile terminal 10 sends messages to a cellular network 20 via a wireless communication link 60 (e.g., via a radio frequency channel), and the network 20 forwards the messages to the controller 30 via a communication link 70. Conversely, the cellular controller 30 sends messages to the mobile terminal 10 via the network 20 and the communication links 60 and 70.
The cellular controller 30 also exchanges SMS or USSD messages with the application server 40 to access a first application stored in the server 40 and exchanges messages with the application server 50 to access a second application stored in the server 50. In particular, the controller 30 communicates with the application server 40 via a dedicated communication link 80 that connects the controller 30 and the application server 40. Similarly, the controller 30 communicates with the application server 50 via the cellular network 20 and a communication link 90 that connects the server 50 with the network 20. The cellular controller 30 accesses the first and second applications by exchanging SMS or USSD messages with the servers 40 and 50 in accordance with the SMS or USSD protocol, and thus, the first and second applications must be designed and implemented in accordance with an SMS or USSD protocol. For example, the first and second applications may be designed and implemented in accordance with one of the SMPP, UCP, CIMD, or NIP protocols mentioned above.
Based on such configuration, the mobile terminal 10 can access the first application stored in the application server 40 by sending and receiving SMS or USSD messages via the cellular network 20, the cellular controller 30, and the communication links 60, 70, and 80. Similarly, the mobile terminal 10 can access the second application stored in the application server 50 by sending and receiving SMS or USSD messages via the cellular network 20, the cellular controller 30, and the communication links 60, 70, and 90.
As described above, the first and second applications can be accessed by the mobile terminal 10 because they are specifically designed and implemented in accordance with a SMS or USSD protocol. However, designing applications based on such protocol is extremely difficult and time consuming. For example, existing Internet software programs and design tools currently do not enable programmers to design and implement Internet applications in accordance with the SMS or USSD protocol, and thus, designing such applications to communicate with the cellular controller 30 is very tedious and difficult. Furthermore, in order for the application servers 40 and 50 to communicate with multiple mobile terminals, they have to implement and utilize a complex session management scheme for handling data exchanged between the multiple terminals. Also, even though some Internet applications have been designed to communicate in accordance with the SMS or USSD protocol, most of the Internet applications are designed to operate only in accordance with an Internet protocol (e.g., the Hyper Text Transfer Protocol (“HTTP”) protocol). In other words, even after a lot of effort and expense are spent to develop some applications that can be accessed by the mobile terminal 10, the mobile terminal 10 still cannot access the vast majority of Internet applications. Moreover, the vast majority of applications cannot be easily modified to communicate with the terminal 10.
In order to attempt to overcome the above problems, a cellular controller has been developed that accesses Internet applications which have been designed in accordance with an Internet protocol and which have been previously processed by an operator of the controller. Then, the controller outputs messages to mobile terminals based on the processed information from the Internet applications.
Specifically, the operator of the controller uses a typical Internet browser to manually accesses Internet applications that have been designed and implemented in accordance with a Hyper Text Markup Language (“HTML”) protocol and receives one or more HTML pages from the applications. (A HTML page is a predetermined group of data that is generated by the Internet application). Then, the operator utilizes a specific program to manually identify information within the HTML pages that is capable of being extracted from the HTML pages and select some of the extractable information. After the HTML pages have been processed in such manner, the controller strips various data from the HTML pages to search for particular fields within the HTML pages and sends the data within the fields to the mobile terminal as an SMS message. For example, the controller may receive a web page that contains information about NASDAQ stocks, strip information from the web page to obtain data relating to the price quote of a particular stock, and send the price quote to the mobile terminal as an SMS message.
Although the above cellular controller can access Internet applications that utilize an HTML protocol, the controller only extracts selected information from the HTML pages that has been manually processed by the operator of the controller and selectively forwards the selected information to the mobile terminal. As a result, the type and amount of information that the mobile terminal receives is somewhat limited. In addition, a substantial amount of time is need to extract the selected information from the HTML pages, and thus, data from “real time” Internet applications cannot be forwarded the mobile terminal in an efficient manner.
In another attempt to overcome the above problems, a cellular controller has been developed that receives HTML data and outputs Wireless Markup Language (“WML”) data to mobile terminals in accordance with a Wireless Application Protocol (“WAP”) protocol. However, the WAP protocol is a highly specialized communication protocol, and in order to operate in accordance with the WAP protocol, a mobile terminal must be specifically designed in accordance with the protocol and must have a micro-browser installed locally within the mobile terminal. In addition, a mobile terminal that operates in accordance with the WAP protocol can only receive WML data and cannot receive SMS or USSD messages. Since only a very small percentage of mobile terminals that have been specifically designed to support the WAP protocol and receive WML data, the above system does not enable the vast majority of mobile terminals to access Internet applications that have been implemented in accordance with the HTTP protocol and does not facilitate the design of Internet applications so that they can communicate with the vast majority of mobile terminals.
In yet another attempt to overcome the above problems, the “i-mode” protocol has been developed by NTT DoCoMo and employed extensively in Japan. The i-mode protocol enables mobile terminals to communicate with Internet applications by using simplified versions of HTML messages. However, the i-mode protocol still has several disadvantages. For example, since the protocol uses simplified versions of HTML messages, each web site that needs to communicate with a mobile terminal via the i-mode protocol must be modified so that it communicates via the simplified HTML messages. Thus, since the vast majority of web sites have not been modified to communicate via such simplified messages, the number of web sites that can be accessed by the mobile terminals is very limited. Also, the data rate of the communications between the mobile terminals and the Internet applications using the i-mode protocol it is limited to about 9.6 kbps. Although such speed may be suitable for some current communication systems, it will be too slow for future communication systems (e.g., 2.5G and 3G cellular systems) that require much faster data rates. Additional information about the i-mode protocol may be found at www.nttdocomo.com.